// 环境配置
export interface EnvConfig {
  baseUrl: string
  appName: string
  version: string
  debug: boolean
}

// 开发环境配置（本地开发调试）
const devConfig: EnvConfig = {
  baseUrl: 'http://192.168.1.7:8081/api', // 本地局域网地址，用于开发调试
  appName: '政务服务平台-开发',
  version: '1.0.1-dev',
  debug: true,
}

// 测试环境配置（内网测试）
const testConfig: EnvConfig = {
  baseUrl: 'http://192.168.1.7:8081/api', // 内网测试服务器
  appName: '政务服务平台-测试',
  version: '1.0.1-test',
  debug: true,
}

// 生产环境配置（正式发布）
const prodConfig: EnvConfig = {
  baseUrl: 'http://111.53.165.56:8081/api', // 外网正式服务器地址
  appName: '政务服务平台',
  version: '1.0.1',
  debug: false,
}

// 根据编译条件选择环境
// 默认使用开发环境配置（避免TypeScript报错）
let currentEnv: EnvConfig = devConfig

// #ifdef H5
// H5 环境判断
// 使用 Vite 的环境变量（import.meta.env）
const isDev = import.meta.env.DEV
const isProd = import.meta.env.PROD

if (isDev) {
  // 开发环境使用代理，避免跨域问题
  currentEnv = {
    ...devConfig,
    baseUrl: '/api', // 使用相对路径，通过 vite 代理转发
  }
} else if (isProd) {
  currentEnv = prodConfig
} else {
  currentEnv = testConfig
}
// #endif

// #ifdef MP-WEIXIN
// 微信小程序环境判断
// 可以通过微信开发者工具的条件编译或自定义配置
// currentEnv = devConfig // 开发时使用开发环境
currentEnv = testConfig // 测试时使用测试环境
// currentEnv = prodConfig // 生产时使用生产环境
// #endif

// #ifdef APP-PLUS
// App 环境判断
// 开发调试时使用 devConfig，打包发布时改成 prodConfig
// currentEnv = prodConfig // 🔥 正式发布使用生产环境
currentEnv = devConfig // 💡 开发调试时取消这行注释，注释上面一行
// #endif

export default currentEnv
